Avoid infinite recursion under 'rectangle-mark-mode'
authorEli Zaretskii <eliz@gnu.org>
Sun, 27 Apr 2025 07:08:38 +0000 (10:08 +0300)
committerEli Zaretskii <eliz@gnu.org>
Sun, 27 Apr 2025 07:08:38 +0000 (10:08 +0300)
* lisp/rect.el (rectangle--region-beginning)
(rectangle--region-end): Avoid infinite recursion.  Patch by Alcor
<alcor@tilde.club>.  Do not merge to master.  (Bug#77973)

lisp/rect.el

index c82bca8100c4bc6d40e66f7941de46b934972b41..b6dc9548bb178596f59578826903c6798f633c0a 100644 (file)
@@ -766,7 +766,7 @@ Ignores `line-move-visual'."
    ((not rectangle-mark-mode)
     (funcall orig))
    (t
-    (apply #'min (mapcar #'car (region-bounds))))))
+    (apply #'min (mapcar #'car (let (rectangle-mark-mode) (region-bounds)))))))
 
 (defun rectangle--region-end (orig)
   "Like `region-end' but supports rectangular regions."
@@ -774,7 +774,7 @@ Ignores `line-move-visual'."
    ((not rectangle-mark-mode)
     (funcall orig))
    (t
-    (apply #'max (mapcar #'cdr (region-bounds))))))
+    (apply #'max (mapcar #'cdr (let (rectangle-mark-mode) (region-bounds)))))))
 
 (defun rectangle--extract-region (orig &optional delete)
   (cond